在關聯式資料庫中,資料表與資料表之間有各種關聯、條件約束,所以一個資料庫是否設計的合理和資料表的設計有很大的關係,接下來介紹設計資料表時應該將哪些因素也考慮進去。
首先,思考資料庫內要包含哪些資料,而資料屬於哪些實體物件,物件與物件之間存在的關聯。
將所有要存入資料庫的資料歸類,整理成一個分類,而歸入這個分類的資料被稱為實體的屬性,不同實體間存在著關聯,E-R模型要將這些關聯體現出來。
為了做到盡量不浪費資料庫內的空間,每個資料行該用甚麼資料類型就變得更加重要。
這就關係到null了,null在資料庫中是比較特殊的,表示未知。雖然null本身不占用空間,但她所在的資料行是需要空間的。而資料表中有較多的null欄位時會對資料庫效能帶來影響,所以盡量少用允許資料行為空。
資料表中的資料,每一列不能有重複的標誌當主索引鍵。
資料庫中,一旦定義了所謂的條件約束,則只有滿足這些條件的資料才可插入。
索引可以加快資料表中的資料擷取,可以提升資料庫使用效率,所以對於在哪些資料行上,索引的使用需要去思考。
實體關聯模型稱E-R模型 (Entity-relationship model),構成E-R圖的要素主要為實體、屬型、關聯
將真實世界的人、事、物等實體,以一個方框圖來表示,
實體擁有的特性稱為屬性,以橢圓形來表示屬性,
實體與實體之間如果有關聯,則將此關聯以菱形連結兩實體,使用無方向性實線來連接,且在實線旁寫上關聯類型( 1 : 1 , 1 : n , n : m)